Radio telecommunications systems using code division multiple access (CDMA) transmit multiple channels simultaneously in the same frequency band.
As shown in FIG. 1, a baseband signal 2 for transmission, which as used herein includes digital signals which may have been processed by a processor 4 to compress them, is modulated 6 using a modulation scheme such as Quaternary phase shift keying (QPSK) or quadrature amplitude modulation (QAM) so as to define a sequence of “symbols” that are to be transmitted.
The symbols which have both an in phase and imaginary component occur at a rate known as a symbol rate. The symbols from the modulator undergo two further processing operations prior to transmission.
The symbols are processed with a spreading code 8 so as to spread the data from each symbol. The spread data is then further multiplied by a scramble code 10 which is specific to the cell that the mobile or base station is operating in. The result of these processes is to generate “chips” which are then transmitted following up-conversion 12 to the desired transmit frequency.
The spreading codes are selected such that they make the symbols mutually orthogonal. This condition applies whilst all of the chips are in time alignment (which is easy to achieve at the transmitter) but the occurrence of multiple transmission paths in the propagation channel between the transmitter and receiver can result in multiple versions of the same transmit sequence of chips arriving with different time delays and amplitudes at the receiver, as schematically shown in FIG. 2. To put this in context, the chip rate for UMTS systems is 3.84 M bits per second. This means that the radio wave carrying the chip propagates a little over 75 meters in one chip period. Consequently any path differences in excess of 75 meters enables two completely different chips to arrive at a receiver at the same time.
In reality the multi-path distortion may introduce time delays up to three hundred or so times the chip period.
As the chip rate is defined, the user/transmission system can trade off data rate with the length of the spreading code used to spread the data. Thus shorter spreading codes can be used to achieve higher data rates, but with the possibility of higher bit error rates occurring in the data transmission.
In order to recover the transmitted data it is known to use a rake receiver architecture to seek to re-align the various time displaced versions of the original signal.
A rake receiver is schematically shown in FIG. 3. It comprises a plurality of individual processing channels 30-1, 30-2 to 30-N, known as fingers. Each finger allows the relative time alignment between the received signal and a de-spreading code to be adjusted. This enables signal power from each significant transmission path to be recovered and brought into time alignment.
In prior art rake receivers, each finger comprises a plurality of correlators so as to integrate the correlation product of the incoming signal with the de-spreading and descrambling code.
FIG. 4 schematically illustrates the functionality within known fingers of rake receiver. Each finger comprises several correlators. The correlators act to correlate the down converted and digitised signal RxI and RxQ provided by a radio frequency front end with descrambling signals provided by a local descrambling code generator which is known to the person skilled in the art and need not be described in detail here. The scrambling and de-scrambling codes are selected in a known manner and have the property that their autocorrelation function is very large if the codes are in correct temporal alignment and substantially zero otherwise.
Each finger has its delay set up by a process of estimating the channel response. Once set up, the finger uses a closed loop control to make sure that it is properly time aligned to within ½ chip with the signal it is seeking to receive.
Three correlators are provided with versions of the input signal, each slightly offset in time. An “early” correlator 40 receives an input directly from the RF front end. A delay of ½ chip is provided by a first delay element 42 and the output of the delay element is provided to an “on time” correlator 44 and data extraction correlators Data-0, Data-1 to Data-N. The output of the delay element is further provided to a second ½ chip delay element 46 who's output is provided to a “late” correlator 48.
Thus, when compared to the “on time” correlator the “early” correlator sees a time advanced version of the input and the late correlator sees a time delayed version of the input.
The “early”, “on time” and “late” correlators examine the data to identify a known sequence called the common pilot channel (CPICH) which is also used in the process of characterising the communications channel. By correlating with the CPICH and filtering it the receiver can use the relative values of the early, on time and late correlators to check that it is properly aligned with the time delayed version of the signal that the particular finger has been assigned to, and to adjust its timing if necessary by modifying the timing of the de-spreading sequence with respect to an internal reference time.
The data could be decoded by a single channel but in a terminal conforming to the high speed data packet access category 6 standard the data could be in any one of twelve data channels. To ensure data recovery the fingers include a correlator for each of these twelve channels.
A time multiplexed pilot is used and as this is only carried on one physical data channel the correlator for this channel can be succeeded by two further correlators arranged to detect the A and B pilots, respectively, used in transmit diversity systems.
It can be seen that each rake finger itself consists of seventeen correlators data 0 to data 11, early, on time and late correlators for detecting the CPICH and correlators for detecting TMP A and TMP B.
This architecture repeated across several fingers of the rake receiver can take up significant space on a silicon die.
Filters 50, 52 and 54 following the early, on time and late correlators are moving average filters that filter the CPICH symbols over 512 chips. Filters are also provided in the time multiplexed pilot TMP A and TMP B blocks 60 and 62, and act to form a moving average over the length of a multiple of slots.
In the rake finger context, the pilot (CPICH and TMP) symbols are used for phase rotation. Filtering provides a less noisy version of the pilot symbols. To account for variations in the speed of the mobile device, filtering can be done over 2 pilot symbols (fast moving) or 16 pilot symbol (slow moving). In the path searcher context, filtering is not required. However, it needs to be a running accumulation of all the CPICH symbols. This would suffice since the symbols are being more for power detection than phase detection.
As the filters only receive a symbol every time a spreading code length of chips has been received, it can be seen that the filter is updated only infrequently.